package com.example.blogback.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.example.blogback.dto.ArticleDTO;
import com.example.blogback.entity.Article;

public interface ArticleService {
    /**
     * 创建文章
     */
    void createArticle(ArticleDTO articleDTO);

    /**
     * 更新文章
     */
    void updateArticle(ArticleDTO articleDTO);

    /**
     * 删除文章
     */
    void deleteArticle(Long id);

    /**
     * 设置精选状态
     */
    void setFeatured(Long id, Boolean featured);

    /**
     * 获取文章详情
     */
    ArticleDTO getArticleDetail(Long id);

    /**
     * 分页查询文章列表
     */
    IPage<Article> getArticleList(Long categoryId, Integer page, Integer size);

    /**
     * 增加访问量
     */
    void incrementViewCount(Long id);
}